#ifndef TERRAINFACTORY_HPP_
# define TERRAINFACTORY_HPP_

# include <string>
# include "3D/Terrain.hpp"

class       TerrainFactory
{
public:
    static Terrain*         createNewTerrain(const std::string &fileName);
    static Terrain*         createNewTerrain(const unsigned int width, const unsigned int height, const unsigned int maxHeight);
	static unsigned int*	generateIndexes(const unsigned int nbVertexWidth, const unsigned int nbVertexHeight, unsigned int& vertexesSize);
    static void				calculateNormals(DrawableObject* object, const unsigned int width, const unsigned int height);
};

#endif // !TERRAINFACTORY_HPP_
